#include "DataAccess.h"

QList<BlogPreview> DataAccess::getBlogList()
{
    QList<BlogPreview> list;
    list.append(BlogPreview("QT 连接 MySQL8 提示 QMYSQL driver not loaded",
                            "这是因为 MySQL8.0 后，提高了客户端和服务器数据通信的安全性，对通信数据做了加密，所以还需要依赖一些其他的动态库。完成第一步后，对于 MySQL8.0 之前的版本，做到这一步就结束了，可以成功连接到 MySQL 数据库，大功告成。然而对于 MySQL8.0 之后的版本，直接运行程序会提示驱动无法被加载。可能你看到的文件名和我的不完全相同，相似即可。然后将这两个文件拷贝到你的项目的程序的。",
                            "脸滚键盘1201",
                            "2025-06-26 09:21",
                            4956,
                            29,
                            14,
                            68,
                            QPixmap(":/test/resoures/test/cover6.png")));
    return list;
}

QList<Comment> DataAccess::getCommentList()
{
    QList<Comment> list;
    list.append(Comment(QPixmap(":/test/resoures/test/avatar1.png"),
                        "脸滚键盘1201",
                        QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm"),
                        "演示评论"));
    return list;
}

BlogDetail DataAccess::getBlogDetail()
{
    BlogDetail blogDetail;
    blogDetail.title = "QT 连接 MySQL8 提示 QMYSQL driver not loaded";
    blogDetail.time = "2025-06-26 09:21";
    blogDetail.readCount = 4956;
    blogDetail.category = "计算机";
    blogDetail.authorAvatar = QPixmap(":/test/resoures/test/avatar1.png");
    blogDetail.authorName = "脸滚键盘1201";
    blogDetail.htmlContent = "";
    QFile file("QT 连接 MySQL8 提示 QMYSQL driver not loaded.txt");
    if (file.open(QIODevice::ReadOnly | QIODevice::Text))
    {
        QTextStream in(&file);
        blogDetail.htmlContent = in.readAll(); // 读取全部内容
        file.close();
    }
    blogDetail.likeCount = 29;
    blogDetail.commentCount = 14;
    blogDetail.favoriteCount = 68;
    return blogDetail;
}

QList<Appeal> DataAccess::getAppealList()
{
    QList<Appeal> list;
    list.append(Appeal(QPixmap(":/test/resoures/test/avatar1.png"),
                        "脸滚键盘1201",
                        QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm"),
                        "申诉理由：申诉理由演示"));
    return list;
}
